/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package wasolicitudesfiec.consultas;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Vector;
import entidad.Datosmateria;
/**
 *
 * @author kabad
 */
public class ConsultasDatosmateria{
private Connection con;

public Datosmateria HLleerDatosmateria(Datosmateria val) throws SQLException{
return leerDatosmateria(val.getIdEstudiante(), val.getIdMateria());
}

public Vector<Datosmateria> leerVariosDatosmateria() throws SQLException{
Vector<Datosmateria> datos=new Vector<Datosmateria>();
Datosmateria reg;

PreparedStatement proc=con.prepareStatement(
"call leerVariosDatosmateria() ");
ResultSet rs=proc.executeQuery();
while (rs.next()) {
reg = new Datosmateria();
reg.setIdEstudiante(rs.getInt(1));
reg.setIdMateria(rs.getInt(2));
reg.setPromedio(rs.getDouble(3));
datos.add(reg);
}//end while
return datos;


}

public Vector<Datosmateria> HLleerVariosDatosmateria(Datosmateria val) throws SQLException{
return leerVariosDatosmateria();
}

public boolean modificarDatosmateria(int idEstudiante, int idMateria, double promedio) throws SQLException{
boolean exitoOperacion = true;

PreparedStatement proc=con.prepareStatement(
"call modificarDatosmateria(?,?,?) ");
proc.setInt(1, idEstudiante);
proc.setInt(2, idMateria);
proc.setDouble(3, promedio);
proc.execute();
return exitoOperacion;


}

public boolean HLmodificarDatosmateria(Datosmateria val) throws SQLException{
return modificarDatosmateria(val.getIdEstudiante(), val.getIdMateria(), val.getPromedio());
}

public boolean eliminarDatosmateria(int idEstudiante, int idMateria) throws SQLException{
boolean exitoOperacion = true;

PreparedStatement proc=con.prepareStatement(
"call eliminarDatosmateria(?,?) ");
proc.setInt(1, idEstudiante);
proc.setInt(2, idMateria);
proc.execute();
return exitoOperacion;


}

public boolean HLeliminarDatosmateria(Datosmateria val) throws SQLException{
return eliminarDatosmateria(val.getIdEstudiante(), val.getIdMateria());
}

  

public void setConexion(Connection con) {
this.con=con;
}

public Datosmateria nuevoDatosmateria(double promedio) throws SQLException{
Datosmateria reg=new Datosmateria();

PreparedStatement proc=con.prepareStatement(
"call nuevoDatosmateria(?) ");
proc.setDouble(1, promedio);
ResultSet rs=proc.executeQuery();
if (rs.next()) {
reg.setIdEstudiante(rs.getInt(1));
reg.setIdMateria(rs.getInt(2));
reg.setPromedio(rs.getDouble(3));
}else reg=null;
return reg;


}

public Datosmateria HLnuevoDatosmateria(Datosmateria val) throws SQLException{
return nuevoDatosmateria(val.getPromedio());
}

public Datosmateria leerDatosmateria(int idEstudiante, int idMateria) throws SQLException{
Datosmateria reg=new Datosmateria();

PreparedStatement proc=con.prepareStatement(
"call leerDatosmateria(?,?) ");
proc.setInt(1, idEstudiante);
proc.setInt(2, idMateria);
ResultSet rs=proc.executeQuery();
if (rs.next()) {
reg.setIdEstudiante(rs.getInt(1));
reg.setIdMateria(rs.getInt(2));
reg.setPromedio(rs.getDouble(3));
}else reg=null;
return reg;


}


}// FIN CLASE: ConsultasDatosmateria